# 数据的交换 (借助第三方变量)
# a = 1
# b = 2
#
# c = a
# a = b
# b = c

# python特有的交换语法
# a = 1
# b = 2
# a,b = b,a
# print(a,b)

# 选择排序的实现
def selection_sort(nums: list[int]):
    """选择排序"""
    n = len(nums)
    # 外循环：未排序区间为 [i, n-1]
    for i in range(n - 1):
        # 内循环：找到未排序区间内的最小元素
        k = i
        for j in range(i + 1, n):
            if nums[j] < nums[k]:
                k = j  # 记录最小元素的索引
        # 将该最小元素与未排序区间的首个元素交换
        nums[i], nums[k] = nums[k], nums[i]

nums = [4,1,3,1,5,2]
selection_sort(nums)
print(nums)